package com.ruoyi.category.mapper;

import java.util.List;
import com.ruoyi.category.domain.StockCategory;
import com.ruoyi.category.domain.StockGoods;

/**
 * 商品类别管理Mapper接口
 * 
 * @author yx
 * @date 2024-12-19
 */
public interface StockCategoryMapper 
{
    /**
     * 查询商品类别管理
     * 
     * @param categoryId 商品类别管理主键
     * @return 商品类别管理
     */
    public StockCategory selectStockCategoryByCategoryId(Integer categoryId);

    /**
     * 查询商品类别管理列表
     * 
     * @param stockCategory 商品类别管理
     * @return 商品类别管理集合
     */
    public List<StockCategory> selectStockCategoryList(StockCategory stockCategory);

    /**
     * 新增商品类别管理
     * 
     * @param stockCategory 商品类别管理
     * @return 结果
     */
    public int insertStockCategory(StockCategory stockCategory);

    /**
     * 修改商品类别管理
     * 
     * @param stockCategory 商品类别管理
     * @return 结果
     */
    public int updateStockCategory(StockCategory stockCategory);

    /**
     * 删除商品类别管理
     * 
     * @param categoryId 商品类别管理主键
     * @return 结果
     */
    public int deleteStockCategoryByCategoryId(Integer categoryId);

    /**
     * 批量删除商品类别管理
     * 
     * @param categoryIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteStockCategoryByCategoryIds(Integer[] categoryIds);

    /**
     * 批量删除${subTable.functionName}
     * 
     * @param categoryIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteStockGoodsByGoodsCategorys(Integer[] categoryIds);
    
    /**
     * 批量新增${subTable.functionName}
     * 
     * @param stockGoodsList ${subTable.functionName}列表
     * @return 结果
     */
    public int batchStockGoods(List<StockGoods> stockGoodsList);
    

    /**
     * 通过商品类别管理主键删除${subTable.functionName}信息
     * 
     * @param categoryId 商品类别管理ID
     * @return 结果
     */
    public int deleteStockGoodsByGoodsCategory(Integer categoryId);
}
